package com.github.niefy.modules.wx.service;

import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import me.chanjar.weixin.common.error.WxErrorException;

public interface ServiceMsgService {
    /**
     * 回复文字消息
     */
    Boolean sendText(String toUser, String sendContent) throws WxErrorException;

    /**
     * 回复图片消息
     */
    Boolean sendImage(String toUser, JSONObject mediaId) throws WxErrorException;

    /**
     * 回复录音消息
     */
    Boolean sendVoice(String toUser, JSONObject mediaId) throws WxErrorException;

    /**
     * 回复视频消息
     */
    Boolean sendVideo(String toUser, JSONObject videoInfoJson) throws WxErrorException;

    /**
     * 回复音乐消息
     */
    Boolean sendMusic(String toUser, JSONObject musicInfoJson) throws WxErrorException;

    /**
     * 回复图文消息（点击跳转到外链）
     * 图文消息条数限制在1条以内
     */
    Boolean sendNews(String toUser, JSONArray newsInfoJson) throws WxErrorException;

    /**
     * 回复公众号文章消息（点击跳转到图文消息页面）
     * 图文消息条数限制在1条以内
     */
    Boolean sendMpNews(String toUser, JSONObject mediaId) throws WxErrorException;

    /**
     * 回复卡券消息
     */
    Boolean sendWxCard(String toUser, JSONObject cardId) throws WxErrorException;

    /**
     * 回复小程序消息
     */
    Boolean sendMiniProgram(String toUser, JSONObject miniProgramInfoJson) throws WxErrorException;

    /**
     * 回复菜单消息
     */
    Boolean sendMsgMenu(String toUser, JSONObject msgMenusJson) throws WxErrorException;

    Boolean sendMsg(String msgType, String openId, Object content);
}
